package com.ruoyi.jiaopei.domain.bo;

import com.ruoyi.common.core.validate.AddGroup;
import com.ruoyi.common.core.validate.EditGroup;
import lombok.Data;
import lombok.EqualsAndHashCode;
import javax.validation.constraints.*;

import java.util.Date;

import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 排期业务对象 tb_scheduling
 *
 * @author macy
 * @date 2024-04-11
 */

@Data
@EqualsAndHashCode(callSuper = true)
public class TbSchedulingBo extends BaseEntity {

    /**
     * ID
     */
    @NotNull(message = "ID不能为空", groups = { EditGroup.class })
    private Long id;

    /**
     * 老师ID
     */
    @NotNull(message = "老师ID不能为空", groups = { AddGroup.class, EditGroup.class })
    private Long teacherId;

    /**
     * 每周
     */
    private String week;

    /**
     * 课程时间
     */
    private String courseDuration;

    /**
     * 开始时间
     */
    private String startHour;

    /**
     * 结束时间
     */
    private String endHour;

    /**
     * 课时
     */
    @NotNull(message = "课时不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal lessonHours;

    /**
     * 学员ID
     */
    @NotNull(message = "学员ID不能为空", groups = { AddGroup.class, EditGroup.class })
    private Long studentId;

    /**
     * 课节
     */
    private Integer section;

    /**
     * 课程ID
     */
    @NotNull(message = "课程ID不能为空", groups = { AddGroup.class, EditGroup.class })
    private Long curriculumId;

    /**
     * 备注
     */
    private String remarks;

    /**
     * 签到状态 1=正常 2=已完成
     */
    @NotBlank(message = "签到状态", groups = { AddGroup.class, EditGroup.class })
    private String status;

    /**
     * 创建时间
     */
    @NotNull(message = "创建时间不能为空", groups = {  EditGroup.class })
    private Date createdDate;

    private String curriculumName;
    private String studentName;
    private String teacherName;
}
